package com.ruoyi.report_sj.domain.bo;

import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import com.ruoyi.report_tg.domain.bo.ExcelGeneralBo;
import com.ruoyi.report_tg.domain.vo.TgsybgBaDetailVo;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;

import java.util.Date;

import java.math.BigDecimal;
import java.util.Date;
import java.util.Map;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 砂浆拌合物性能试验检测报告业务对象 report_sj_sjbhwxnsyjcbg_bs_info
 *
 * @author zxs
 * @date 2024-07-09
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class ReportSjSjbhwxnsyjcbgBsInfoBo extends ExcelGeneralBo {

    /**
     * 主键
     */
    @NotNull(message = "主键不能为空", groups = { EditGroup.class })
    private Long excelId;

    /**
     * 详细
     */
    Map<Long, TgsybgBaDetailVo> baDetailVos;

    /**
     * 第几页
     */
    @NotNull(message = "第几页不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long page;

    /**
     * 共几页
     */
    @NotNull(message = "共几页不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long totalPage;

    /**
     * 检测单位名称
     */
    @NotBlank(message = "检测单位名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiancdwmc;

    /**
     * 记录编号
     */
    @NotBlank(message = "记录编号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jilbh;

    /**
     * 工程名称
     */
    @NotBlank(message = "工程名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String gongcmc;

    /**
     * 工程部位/用途
     */
    @NotBlank(message = "工程部位/用途不能为空", groups = { AddGroup.class, EditGroup.class })
    private String gongcbwyt;

    /**
     * 样品信息
     */
    @NotBlank(message = "样品信息不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpxx;

    /**
     * 样品名称
     */
    @NotBlank(message = "样品名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpmc;

    /**
     * 样品编号
     */
    @NotBlank(message = "样品编号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpbh;

    /**
     * 样品数量及状态
     */
    @NotBlank(message = "样品数量及状态不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpsljzt;

    /**
     * 来样时间
     */
    @NotNull(message = "来样时间不能为空", groups = { AddGroup.class, EditGroup.class })
    private Date yangplysj;

    /**
     * 试验日期
     */
    @NotNull(message = "试验日期不能为空", groups = { AddGroup.class, EditGroup.class })
    private Date shiyrq;

    /**
     * 试验条件温度(℃)
     */
    @NotBlank(message = "试验条件温度(℃)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shiytjwd;

    /**
     * 试验条件相对湿度(%)
     */
    @NotBlank(message = "试验条件相对湿度(%)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shiytjsd;

    /**
     * 检测依据
     */
    @NotBlank(message = "检测依据不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiancyj;

    /**
     * 判定依据
     */
    @NotBlank(message = "判定依据不能为空", groups = { AddGroup.class, EditGroup.class })
    private String pandyj;

    /**
     * 主要仪器设备名称及编号
     */
    @NotBlank(message = "主要仪器设备名称及编号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String zhuyyqsbmcjbh;

    /**
     * 砂浆种类
     */
    @NotBlank(message = "砂浆种类不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shajzl;

    /**
     * 搅拌方式
     */
    @NotBlank(message = "搅拌方式不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiaobfs;

    /**
     * 表观密度测值（kg/m3)
     */
    @NotNull(message = "表观密度测值（kg/m3)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal biaogmdcz;

    /**
     * 分层度(mm)
     */
    @NotNull(message = "分层度(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal fencd;

    /**
     * 下沉深度(mm)
     */
    @NotNull(message = "下沉深度(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal xiacsd;

    /**
     * 保水率(%)
     */
    @NotNull(message = "保水率(%)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal baosl;

    /**
     * 平均含水率(%)
     */
    @NotNull(message = "平均含水率(%)不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal pingjhsl;

    /**
     * 附加声明
     */
    @NotBlank(message = "附加声明不能为空", groups = { AddGroup.class, EditGroup.class })
    private String fujsm;

    /**
     * 检测
     */
    @NotBlank(message = "检测不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jianc;

    /**
     * 记录
     */
    @NotBlank(message = "记录不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jil;

    /**
     * 复核
     */
    @NotBlank(message = "复核不能为空", groups = { AddGroup.class, EditGroup.class })
    private String fuh;

    /**
     * 日期
     */
    @NotNull(message = "日期不能为空", groups = { AddGroup.class, EditGroup.class })
    private Date riq;

    /**
     * 设备id,逗号分割
     */
    @NotBlank(message = "设备id,逗号分割不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shebIds;

    /**
     * 检测依据ids
     */
    @NotBlank(message = "检测依据ids不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiancyjIds;

    /**
     * 判定依据ids
     */
    @NotBlank(message = "判定依据ids不能为空", groups = { AddGroup.class, EditGroup.class })
    private String pandyjIds;

    /**
     * 报告标识(1,报告)
     */
    @NotBlank(message = "报告标识(1,报告)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String bgFlag;


    /**
     * 材料名称
     */
    private String cailmc1;
    /**
     * 报型号规格
     */
    private String xinghgg1;
//    生产厂家/产地
    private String shengccjcd1;
    /**
     * 单位用量(kg/m³)
     */
    private String danwyl1;
//    质量比
    private String zhilb1;

    /**
     * 材料名称
     */
    private String cailmc2;
    /**
     * 报型号规格
     */
    private String xinghgg2;
    //    生产厂家/产地
    private String shengccjcd2;
    /**
     * 单位用量(kg/m³)
     */
    private String danwyl2;
    //    质量比
    private String zhilb2;

    /**
     * 材料名称
     */
    private String cailmc3;
    /**
     * 报型号规格
     */
    private String xinghgg3;
    //    生产厂家/产地
    private String shengccjcd3;
    /**
     * 单位用量(kg/m³)
     */
    private String danwyl3;
    //    质量比
    private String zhilb3;


    /**
     * 材料名称
     */
    private String cailmc4;
    /**
     * 报型号规格
     */
    private String xinghgg4;
    //    生产厂家/产地
    private String shengccjcd4;
    /**
     * 单位用量(kg/m³)
     */
    private String danwyl4;
    //    质量比
    private String zhilb4;

    /**
     * 材料名称
     */
    private String cailmc5;
    /**
     * 报型号规格
     */
    private String xinghgg5;
    //    生产厂家/产地
    private String shengccjcd5;
    /**
     * 单位用量(kg/m³)
     */
    private String danwyl5;
    //    质量比
    private String zhilb5;
    //检测结论
    private String jiancjl;




}
